【综述专栏】Tesla AI DAY 深度分析 硬核!EP1 Tesla Vision
在科学研究中,从方法论上来讲,都应“先见森林,再见树木”。当前,人工智能学术研究方兴未艾,技术迅猛发展,可谓万木争荣,日新月异。对于AI从业者来说,在广袤的知识森林中,系统梳理脉络,才能更好地把握趋势。为此,我们精选国内外优秀的综述文章,开辟“综述专栏”,敬请关注。
01
02
Vision部分:
Multi-task: 现在依然是hot topic? 太多帖子提到这方法了,咱们稍后内容也会提到 Transformer - nV fusion: tesla 有8个视角,并且都是带畸变的,这方案主要解决遮挡问题和不同视角投影变换,这问题的来源最开始是smart summon 所遇到的,我们下文会有详细解读 Spatial - Temporal: 增加视频前后信息,更好的帮助感知,并且有助于后续规控,下文也会详细介绍到,以及比较最近HDMap的工作。
数据标注量方面:
In house 的标注团队,目前特斯拉声称有一千人的标注团队 自动标注:怎么做到scalable, 还有ground truth 的声称 目前数据规模: 60亿label (含velocity/depth) 250w video clip 1.5 PB存储 高质量数据(diverse, clean, large) Refer to Waymo 20w frames, 5 hours 12M labels 最近一家国内知名自动驾驶企业,公开了1千万帧数据,可是它主打unsupervised learning, 其实有标注的数据就5w帧,test data probably 1w frame 目前市面上能拿到最大的数据集估计就是20w frame
03
首先提一下特斯拉Vision 的研发历程:
以下是各年份一些重要发布or更新:
2016-
RegNet: 2D detector
2018-2019
加入了multi-tasks learning 并把网络称为:HydraNet BiFPN 后文会详细介绍 标注主要以manual labelling 为主 Vector space 可以理解为 BEV下面的一个feature space/map,区别于image space, image space更多可以理解为perspective view下的一个空间。 自动驾驶系统称为AutoPilot 4.0 ,其实就是现在的L2,集合ACC, ALC/LKA等功能,蓝色是他们的产品线,
2019-2020 可以称为一个milestone
各大自动驾驶公司都开始往 Multi-tasks learning 方向进攻 Fusion: for smart summon, 为了需要在vector space /(BEV)下更加好地识别车道线,以及为了做到fusion,加入了传感器融合的功能。 图中灰色是 former version, 彩色的是这一版本的 为了达到scalable, 数据标注从manual label 升级到 auto-labelling
2021 - 7月最新技术
亮点:spacial - temporal,在 former version transformer 基础上,加入了时序信息(video module and feature queue) 其实不论transformer, 3D convolution, spacial RNN等,这些思路大家都能想到,在这一个公司,能把这么工程的想法实现, 其中包括自称60亿的label 和 250w video clip, 耗费数以万计的计算资源,不知道多少张卡,把这些features 都实现,确实令人佩服。
04
最原始网络就是做一个简单的车辆检测任务 图像raw data -- RegNet -- BiFPN -- Backbone输出结果 然后Tesla 逐渐把众多这些任务集合到一个multi-tasks learning 的框架-HydraNet 输入:raw image (12bit HDR) 36Hz, 使用这种图像配置的原因:
Sensor 没有过db or ISP,就是1920x960图像
图像不是rgb图像,也不需要处理三通道图像
12bit 能给到更大广度的光照范围,在夜晚场景下,对面车的车灯强光照射这种高对比度的环境下,更加能把握暗处的细节,不至于因为这种场景下,暗处的物体检测不到的现象。
36hz high frame rate 有助于在高速场景下,神经网络能汲取跟多信息,更快做出反应,实时性更加好
BiFPN:
Multi-tasks
1. 首先是在训练完整个网络后,在做inference的时候,不同的任务share 同一个 backbone, 整体来看可以节省计算资源
2. 第二个点是我们训练完后可以去 fine-tune 每一个子任务的,
3. 第三点是在数据经过backbone后,freeze住backbone, 进入detector head前, 把features都cache下来, 然后可以反复去fine tune detector head, 这样就不需要重复去算backbone的输出结果了。
Smart Summon -- multicam lane & road curve
problem
solution
BUT
这里就存在3个问题:
1. 模型训练架构需要如何设计,网络才能做梯度下降;
2. 每辆车在安装的过程中 camera的位置都会有稍微的偏差,外参都会有轻微地抖动,并不是理想角度。
3. 如何构建这个vector space 的真值系统(ground truth), 我们在下一期Autolabelling的分析环节会和大家详解。
待解决的问题:如何将特征从图像空间转换到向量空间? 如图:
Transformer
1. 字典里面都是什么key 呢?2D pixel 下的所有features(物体,车道线等等)
2. Novelty 所在点:
利用transformer, 对8 cameras 2D pixel 下的features, 在3D BEV下做一个融合
不直接乘Homography, 而是让网络implicitly学习外参
3. 鼻祖transformer 论文:Attention is all you need,
https://arxiv.org/pdf/1706.03762.pdf 2017
4. Positional encoding:
https://kazemnejad.com/blog/transformer_architecture_positional_encoding/
Virtual Camera
1. 我们怎么去训练virtual camera 的参数呢?
这里面的参数其实是任意取的,我们的猜想是这些参数是从 roll/pitch/yaw mount error distribution 里面取的,可能是中位数median, 因为对于相机来说相对误差较小。
2. 为什么还要做一个畸变还原呢?
上文也有提到过,因为不做还原的情况下,image不是一个正方形形状,为了让图片在正方形的设置内且保留更多信息,要做一个畸变还原
05
1. 构建类似transformer的网络,把feature融合到一起的机制
2. 在raw image 输入时插入一个 Rectify layer,把不同外参的相机,对齐到同一个虚拟相机的视角下。
3. 目前感觉工业届和学术界还没有像类似的transformer方向,如一个Nueral network 乘以一个Homography 的做法,达到end to end的效果,(不确定有没有做ablation)所以还是novelty 挺高的。
single cam vs multi cam
06
本文目的在于学术交流,并不代表本公众号赞同其观点或对其内容真实性负责,版权归原作者所有,如有侵权请告知删除。
“综述专栏”历史文章
针对深度学习的GPU共享
从2022年的这几篇论文看推荐系统序列建模的趋势
CNN调优总结
大规模图神经网络系统综述
港科+清华+中科院+微软等——视觉-语言智能最新综述
元宇宙技术综述
中国医学影像人工智能20年回顾和展望
基于深度学习的深度图补全
回顾6年深度学习的算法实践和演进
基于图神经网络的推荐系统
高新波教授:人工智能未来发展趋势分析
基于视觉的机器人抓取—从物体定位、物体姿态估计到平行抓取器抓取估计
基于图神经网络模型的特征交互建模
基于深度学习的计算机视觉研究新进展
大规模神经网络最新文献综述:训练高效DNN、节省内存使用、优化器设计
更多综述专栏文章,
请点击文章底部“阅读原文”查看
分享、点赞、在看,给个三连击呗!